<?php
class SampleClone 
{
	private static $propiedadeClasse = 0;
	
	private $propiedadeInstancia;
	private $valorComplexo;
	
	public function __construct()
	{
		$this->valorComplexo = rand(0,300);
		
		sleep( 2 );
		
		$this->propiedadeInstancia = ++self::$propiedadeClasse;
	}
	
	public function __clone()
	{
		$this->propiedadeInstancia = ++self::$propiedadeClasse;
	}
	
	public function quantasInstancias()
	{
		echo $this->propiedadeInstancia, ' instancias foram criadas ate agora', '<br>';
	}
	
	public function qualInstancia()
	{
		echo 'Eu uso a instancia numero: ', $this->propiedadeInstancia, '<br>';
	} 
	
	public function qualValorComplexo()
	{
		echo 'O valor complexo e: ', $this->valorComplexo, '<br>';
	}
}

$clone1 = new SampleClone();
$clone2 = clone $clone1;
$clone3 = clone $clone1;

$clone1->quantasInstancias();
$clone3->quantasInstancias();
$clone2->quantasInstancias();

$clone2->qualInstancia();